-- @Author: 作者QQ2308873645
-- @Date:   2021-11-27 13:12:31
-- @Last Modified by:   作者QQ2308873645
-- @Last Modified time: 2022-06-08 19:06:03
-- @Author: 作者QQ2308873645
-- @Date:   2021-11-27 13:12:31
-- @Last Modified by:   作者QQ2308873645
-- @Last Modified time: 2021-12-14 21:20:35
function 任务控制类:设置皇宫飞贼任务(id)
	玩家数据[id].角色.飞贼次数 = 玩家数据[id].角色.飞贼次数 + 1
	if  玩家数据[id].角色.飞贼次数  > 4 then
		玩家数据[id].角色.飞贼次数=1
	end
	self.临时次数 = 玩家数据[id].角色.飞贼次数
	if self.临时次数 == 2 then
		self.临时名称 = "飞贼"
		self.临时造型 = "山贼"
		self.临时编号 = 1216
	elseif self.临时次数 == 3 then
		self.临时名称 = "销赃贼"
		self.临时造型 = "进阶吸血鬼"
		self.临时编号 = 1416
	elseif self.临时次数 == 4 then
		self.临时名称 = "盗贼首领"
		self.临时造型 = "进阶雨师"
		self.临时编号 = 1421
	else
		self.临时名称 = "毛贼"
		self.临时造型 = "强盗"
		self.临时编号 = 1215
	end

	self.飞贼地图范围 = {
		1501,
		1142,
		1092,
		1070,
		1193,
		1091
	}
	self.飞贼地图 = self.飞贼地图范围[math.random( #self.飞贼地图范围)]
	self.飞贼地图坐标 =   地图处理类:Randomloadtion(self.飞贼地图)
	self.飞贼地图名称 = MapData[self.飞贼地图].名称
	self.飞贼任务id = tonumber(玩家数据[id].id .. "15")
	任务数据[self.飞贼任务id] = {
		类型 = "飞贼",
		结束 = 3600,
		战斗 = false,
		id = id,
		起始 = os.time(),
		编号 = self.临时编号,
		任务id = self.飞贼任务id,
		地图编号 = self.飞贼地图,
		地图名称 = self.飞贼地图名称,
		名称 = self.临时名称,
		造型 = self.临时造型,
		次数 = self.临时次数,
		方向 = math.random( 4) - 1,
		坐标 = self.飞贼地图坐标,
		数字id = {},
		客户id = {}
	}
	self.任务id组 = {}

	if 玩家数据[id].队伍 == 0 then
		self.任务id组[#self.任务id组 + 1] = id
	else
		for n = 1, #队伍数据[玩家数据[id].队伍].队员数据 do
			self.任务id组[#self.任务id组 + 1] = 队伍数据[玩家数据[id].队伍].队员数据[n]
		end
	end

	for n = 1, #self.任务id组 do
		self.任务临时id1 = 角色处理类:生成任务id(玩家数据[self.任务id组[n]])
		玩家数据[self.任务id组[n]].角色.任务数据[self.任务临时id1] = self.飞贼任务id
		任务数据[self.飞贼任务id].数字id[#任务数据[self.飞贼任务id].数字id + 1] = 玩家数据[self.任务id组[n]].id
		任务数据[self.飞贼任务id].客户id[#任务数据[self.飞贼任务id].客户id + 1] = self.任务id组[n]
		self:刷新追踪任务信息(self.任务id组[n])
	end
	地图处理类:添加单位(任务数据[self.飞贼任务id])
	self.对话内容 = " #W/偷拿皇宫的#Y/" .. 任务数据[self.飞贼任务id].名称 .. "#W/已经逃往#Y/" .. 任务数据[self.飞贼任务id].地图名称 .. "（" .. 任务数据[self.飞贼任务id].坐标.x .. "," .. 任务数据[self.飞贼任务id].坐标.y .. ")#W/处，请速往缉拿。"
	发送数据(玩家数据[id].连接id, 20, {"御林军","御林军左统领",self.对话内容})
 end
function 任务控制类:完成皇宫飞贼任务(id组, 任务id)
	for n = 1, #id组 do
		if 玩家数据[id组[n]] ~= nil then
			self.符合抓鬼id = false

			for i = 1, #任务数据[任务id].数字id do
				if id组[n] == 任务数据[任务id].数字id[i] then
					self.符合抓鬼id = true
				end
			end
			if self.符合抓鬼id then
				角色处理类:取消任务(玩家数据[id组[n]],任务id)
				self.抓鬼奖励参数 = 任务数据[任务id].次数
				self.抓鬼奖励等级 = 玩家数据[id组[n]].角色.等级
				self.抓鬼奖励经验 = math.floor(self.抓鬼奖励等级 * self.抓鬼奖励等级 * 180 * self.抓鬼奖励参数)
				角色处理类:添加经验(玩家数据[id组[n]],self.抓鬼奖励经验,"皇宫飞贼")
				if 玩家数据[id组[n]].召唤兽.数据.参战 ~= 0 then
					self.抓鬼奖励等级 = 玩家数据[id组[n]].召唤兽.数据[玩家数据[id组[n]].召唤兽.数据.参战].等级
					self.抓鬼奖励经验 = math.floor(self.抓鬼奖励等级 * self.抓鬼奖励等级 * 60 * self.抓鬼奖励参数 * 0.35 + 150)
					玩家数据[id组[n]].召唤兽:添加经验(self.抓鬼奖励经验, id组[n], 玩家数据[id组[n]].召唤兽.数据.参战, 2)
				end

				if 任务数据[任务id].次数 == 4 then
						玩家数据[id组[n]].角色.飞贼次数 = 0
                        if 活动进度[id组[n]] == nil then
                          活动进度[id组[n]]={师门=0,抓鬼=0,鬼王=0,门派闯关=0,皇宫飞贼=0,知了=0,通天塔=0,车迟斗法=0,乌鸡国=0,高级藏宝图=0,玲珑宝图=0,新手泡泡=0,夏日炎炎=0,年兽活动=0,地煞活动=0,天罡神器=0,任务链=0,轮回镜=0}
                        end
                        if 活动进度[id组[n]].皇宫飞贼 < 5 then
                         活动进度[id组[n]].皇宫飞贼 = 活动进度[id组[n]].皇宫飞贼 + 1
                        end
                        local 奖励物品 = {}
                        local 奖励概率 = {}
                        local 奖励数量 = {}
                        local 奖励总概率 = f函数.读配置(ServerDirectory..[[配置文件\内置活动奖励\皇宫飞贼.txt]], "皇宫飞贼", "奖励总概率")+0
                        for i=1,10 do
                            奖励物品[i]=f函数.读配置(ServerDirectory..[[配置文件\内置活动奖励\皇宫飞贼.txt]], "皇宫飞贼", "物品["..tostring(i).."]")
                            奖励概率[i]=f函数.读配置(ServerDirectory..[[配置文件\内置活动奖励\皇宫飞贼.txt]], "皇宫飞贼", "概率["..tostring(i).."]")+0
                            奖励数量[i]=f函数.读配置(ServerDirectory..[[配置文件\内置活动奖励\皇宫飞贼.txt]], "皇宫飞贼", "数量["..tostring(i).."]")+0
                        end
                        local 循环次数 = 取幸运值奖励(玩家数据[id组[n]].角色.幸运)
                        local 奖励次数 = 0
                        for i=1,循环次数 do
                        	 local 物品名称 = ""
                            local 随机奖励 = math.random(奖励总概率)
                            local 数量 = 0
                            if 随机奖励<=奖励概率[1] then
                               物品名称 = 奖励物品[1]
                               数量 = math.random(1,奖励数量[1])
                               奖励次数 = 奖励次数 + 1
                            elseif 随机奖励<=奖励概率[2] then
                               物品名称 = 奖励物品[2]
                               数量 = math.random(1,奖励数量[2])
                               奖励次数 = 奖励次数 + 1
                            elseif 随机奖励<=奖励概率[3] then
                               物品名称 = 奖励物品[3]
                               数量 = math.random(1,奖励数量[3])
                               奖励次数 = 奖励次数 + 1
                            elseif 随机奖励<=奖励概率[4] then
                               物品名称 = 奖励物品[4]
                               数量 = math.random(1,奖励数量[4])
                               奖励次数 = 奖励次数 + 1
                            elseif 随机奖励<=奖励概率[5] then
                               物品名称 = 奖励物品[5]
                               数量 = math.random(1,奖励数量[5])
                               奖励次数 = 奖励次数 + 1
                            elseif 随机奖励<=奖励概率[6] then
                               物品名称 = 奖励物品[6]
                               数量 = math.random(1,奖励数量[6])
                               奖励次数 = 奖励次数 + 1
                            elseif 随机奖励<=奖励概率[7] then
                               物品名称 = 奖励物品[7]
                               数量 = math.random(1,奖励数量[7])
                               奖励次数 = 奖励次数 + 1
                            elseif 随机奖励<=奖励概率[8] then
                               物品名称 = 奖励物品[8]
                               数量 = math.random(1,奖励数量[8])
                               奖励次数 = 奖励次数 + 1
                            elseif 随机奖励<=奖励概率[9] then
                               物品名称 = 奖励物品[9]
                               数量 = math.random(1,奖励数量[9])
                               奖励次数 = 奖励次数 + 1
                            elseif 随机奖励<=奖励概率[10] then
                               物品名称 = 奖励物品[10]
                               数量 = math.random(1,奖励数量[10])
                               奖励次数 = 奖励次数 + 1
                            end
                            if 物品名称 ~= "" and 物品名称 == "高级魔兽要诀" then
                               local 技能=取高级兽诀名称()
                               道具处理类:给予道具(id组[n],物品名称,nil,技能)
                            elseif 物品名称 ~= "" and 物品名称 == "特殊魔兽要诀" then
                               local 技能=取特殊兽诀名称()
                               道具处理类:给予道具(id组[n],物品名称,nil,技能)
                            else
                                道具处理类:给予道具(id组[n],物品名称,nil,nil,数量)
                            end
                        end
                        道具处理类:系统兽决存仓(id组[n])
                        道具处理类:系统仓库处理(id组[n])
						广播消息(9, "#hd/".."#S/(皇宫飞贼)".."#r/ " .. 玩家数据[id组[n]].角色.名称 .. "#y/成功抓捕了盗贼首领，获得了御林军左统领#g/"..奖励次数.."#Y/次物品奖励".."#"..math.random(110))
						 角色处理类:添加活跃度(玩家数据[id组[n]],5)
						 角色处理类:添加仙玉(玩家数据[id组[n]],100,"皇宫飞贼")
						 if 活动次数数据[id组[n]] == nil then
						 	活动次数数据[id组[n]] = {飞贼次数=0,门派次数=0}
						 end
						 活动次数数据[id组[n]].飞贼次数 = 活动次数数据[id组[n]].飞贼次数 + 1

				else
					玩家数据[id组[n]].角色.飞贼次数 = 任务数据[任务id].次数
				end
			end
		end
	end

	地图处理类:移除单位(任务数据[任务id].地图编号, 任务id)
	任务数据[任务id] = nil
	self:刷新追踪任务信息(id)
 end